using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DevExpress.XtraGrid;
using Барс;
using Барс.БазовыеСервисныеФункции;
using Барс.Ядро;
using Барс.Интерфейс;
namespace Аккорд
{
	public partial class БазоваяФормаОтчетаЗаПериод
	{
		#region Обработчик события действие_ЭкспортОтчета_Нажатие (fdc3c476-60ee-4dd1-be28-c750a51c02b1)
		private void действие_ЭкспортОтчета_Нажатие( object Отправитель, АргументыСобытия Аргументы )
		{
            ФормаИндикаторНеизмеримогоПроцесса форма = new ФормаИндикаторНеизмеримогоПроцесса("Формирование и экспорт отчета...");

		    string имяФайла = "";

            try
            {
                имяФайла = СервисныеФункции.ВыбратьФайлДляСохранения("Экспорт отчета", "Файл Microsoft Excel|*.xls");
                if (string.IsNullOrEmpty(имяФайла))
                {
                    return;
                }

                форма.Показать();
                ОбновитьОтчет();
                аналитическаяТаблица.ExportToXls(имяФайла);

                if (File.Exists(имяФайла))
                {
                    Барс.ОткрытиеФайлов.ОткрытьФайл(имяФайла);
                }

            }
            finally
            {
                форма.Закрыть();
            }
		}
		#endregion
		#region Обработчик события действие_СборкаОтчета_Нажатие (b3add3ac-3744-43ce-b53d-41fc328c1157)
		private void действие_СборкаОтчета_Нажатие( object Отправитель, АргументыСобытия Аргументы )
		{
            ФормаИндикаторНеизмеримогоПроцесса форма = new ФормаИндикаторНеизмеримогоПроцесса("Формирование отчета...");

            try
            {
                форма.Показать();
                ОбновитьОтчет();
            }
            finally
            {
                форма.Закрыть();
            }
		}
		#endregion
		#region Обработчик события редактор_Период_ИзмененииВыбранногоЭлемента (fd9d7f57-e1f8-470c-af8c-c8147d8f456b)
		private void редактор_ТипПериода_ИзмененииВыбранногоЭлемента( object Отправитель, АргументыСобытия Аргументы )
		{
            редактор_НачалоПериода.Заблокирован = !(this.ТипПериода == ТипПериода.Произвольно);
            редактор_ОкончаниеПериода.Заблокирован = !(this.ТипПериода == ТипПериода.Произвольно);

            Аккорд.Период текущийПериод = Аккорд.Период.ПолучитьПериод(DateTime.Now, this.ТипПериода);
            редактор_НачалоПериода.Дата = текущийПериод.НачалоПериода;
            редактор_ОкончаниеПериода.Дата = текущийПериод.ОкончаниеПериода;
		}
		#endregion
		
	}
}